<!DOCTYPE HTML>
<html>
<head>
<title>SetBatchLines | AutoHotkey</title>
<meta name="description" content="The SetBatchLines command determines how fast a script will run (affects CPU utilization)." />
<meta name="ahk:equiv-v2" content="v2-changes.htm#SetBatchLines" />
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
</head>
<body>

<h1>SetBatchLines</h1>

<p>设置脚本的执行速度(影响 CPU 使用率).</p>

<pre class="Syntax">
<span class="func">SetBatchLines</span>, 20ms
<span class="func">SetBatchLines</span>, LineCount</pre>
<h2 id="Parameters">参数</h2>
<dl>

  <dt>20ms</dt>
  <dd><p>(这里的 20ms 只是个例子.) 如果这个值以 ms(毫秒) 结尾, 那么它表示脚本应该多长时间休眠一次(每次休眠 10 ms). 在下面的例子中, 脚本会在每次运行 20 ms 之后休眠 10 ms: <code>SetBatchLines, 20ms</code>.</p></dd>

  <dt>LineCount</dt>
  <dd><p>休眠前要执行脚本的行数. 这个值可以高达 9223372036854775807. 此外, 此模式与前面段落中介绍的 20ms 是互斥的; 即每次只有其中一个会生效.</p></dd>

</dl>

<h2 id="Remarks">备注</h2>
<p>使用 <code>SetBatchLines -1</code> 让脚本无休眠运行(即让脚本以全速运行).</p>
<p>默认设置为 10 ms, 不过在 <span class="ver">[v1.0.16]</span> 之前的版本中默认为 10(行).</p>
<p>不论希望脚本快速执行还是希望脚本减少 CPU 占用都推荐使用 "ms" 方法. 例如, 在大多数系统中 10 ms 的设置会避免脚本使用超过 50% 的 CPU 时间. 这样既可以让脚本快速运行, 同时也保留了充分的 CPU 资源供其他任务使用, 例如游戏或视频捕获/回放.</p>
<p>内置变量 <strong>A_BatchLines</strong> 包含了当前的设置.</p>
<p>根据脚本的内容, 脚本的速度还可能会受到下列命令的影响: <a href="SetWinDelay.htm">SetWinDelay</a>, <a href="SetControlDelay.htm">SetControlDelay</a>, <a href="SendMode.htm">SendMode</a>, <a href="SetKeyDelay.htm">SetKeyDelay</a>, <a href="SetMouseDelay.htm">SetMouseDelay</a> 和 <a href="SetDefaultMouseSpeed.htm">SetDefaultMouseSpeed</a>.</p>
<p>每个新运行的<a href="../misc/Threads.htm">线程</a>(例如 <a href="../Hotkeys.htm">热键</a>, <a href="Menu.htm">自定义菜单项</a>或<a href="SetTimer.htm">定时</a>子程序) 都会以此命令的默认设置开始. 通过在脚本的自动执行段(脚本的顶部) 使用此命令可以改变这个默认设置.</p>

<h2 id="Related">相关</h2>
<p><a href="SetWinDelay.htm">SetWinDelay</a>, <a href="SetControlDelay.htm">SetControlDelay</a>, <a href="SendMode.htm">SendMode</a>, <a href="SetKeyDelay.htm">SetKeyDelay</a>, <a href="SetMouseDelay.htm">SetMouseDelay</a>, <a href="SetDefaultMouseSpeed.htm">SetDefaultMouseSpeed</a>, <a href="Critical.htm">Critical</a></p>

<h2 id="Examples">示例</h2>
<div class="ex" id="ExMS">
<p><a class="ex_number" href="#ExMS"></a> 使脚本每 10 毫秒休眠一次.</p>
<pre>SetBatchLines, 10ms</pre>
</div>

<div class="ex" id="ExLineCount">
<p><a class="ex_number" href="#ExLineCount"></a> 使脚本每 1000 行休眠一次.</p>
<pre>SetBatchLines, 1000</pre>
</div>

</body>
</html>